Many service organizations need to dynamically allocate their servers in order to attain certain goals. Such allocation is typically performed manually. Servers may include service agents, both human and robotic. Increasingly, external performance measures of service delivered dominate internal cost measures, such as utilization and labor costs. Such external measures often consist of classifying certain transactions into meeting or not meeting desired objectives and determining a proportion of those transactions meeting objectives. Such a proportion is called a service level. The service level is measured over some period of time or over some number of transactions.
Examples of service levels are the percentage of customer problems resolved without further activity, the percentage of dispatched taxicabs that reach the rider within the committed time, the proportion of telephone calls handled by a qualified representative without requiring a transfer or referral to another server, the proportion of telephone calls that can be connected to a server without delay, the proportion of e-mail requests that are answered within 24 hours, the percentage of on-time departures of city buses on a particular bus route on weekdays, the proportion of transactions handled not resulting in a customer complaint, the proportion of preferred customer calls handled by fully qualified servers, the percentage of Spanish customers handled by a server fluent in Spanish, the percentage of telephone calls not abandoned by the customer before connection to a server, the percentage of customer inquiry telephone calls that are not blocked at the central office switch, the percentage of customer sessions with the self-service World Wide Web pages that are not aborted while waiting for a display, the percentage of customer requests via telephone that can be completed immediately while on the phone, the percentage of loan applications processed within one-half hour from the time of the request, and the percentage of priority telephone calls answered within 8 seconds and handled properly by a qualified server, to name a few.
A service organization's goal for a service level in this context is a particular desired value of the service level. The goal is said to be satisfied if the attained service level is at least as high as the desired service level for the goal. Conversely, the goal is said to be unattained if the realized service level is less than the desired service level. For example, the goal of at least 85% of telephone calls from preferred customers each day being answered within 12 seconds would be attained if, among the telephone calls from preferred customers during the current day, 87% were answered within 12 seconds; inversely, if only 84% of such calls are answered within 12 seconds, the goal would be unattained. In this framework the goal is either attained or not. Moreover, no extra benefit is accrued for attaining a service level much higher than the goal.
A service level goal is one commonly used in criteria for contingency actions, including exceptional allocations of resources. Other relevant performance goals in this context may include maximum values for mean wait times, current queue conditions, minimum number of transactions throughput in a work shift, and measures involving various determinable factors indicative of quality service.
The number of server resources allocated to a type of service often affects the service level achieved for that type of service. When such is the case, the operation can usually reallocate servers to the subject work in order to achieve service level goals. Such reallocation generally incurs opportunity cost; however, since service levels for other work suffers. One can often justify this opportunity cost based on an appropriate priority hierarchy as might be established by the enterprise's operating rules.
For example, suppose servers in a call center can handle both loan servicing and sales servicing transactions. When more servers are assigned to sales activities, sales servicing transactions experience a higher service level on answer delay—that is, the amount of time required to answer each sales call declines. Meanwhile, the loan servicing calls are not answered as promptly, reducing the service level for loan servicing transactions. The service organization may rationalize this by saying that loan servicing is relatively less important because it is not very likely that an existing customer will switch loan companies, and that the company presently needs to acquire new customers that could easily take their business to a competitor if their calls are not answered promptly. The service organization wants to satisfy the goal of loan servicing, but not at the expense of failing to reach the goal in sales. When the sales goal is not in jeopardy, but the loan servicing is failing to meet its goal, the service organization desires to allocate more resources to loan servicing. The service organization wants to meet both goals, but the sales goal is more important than the loan servicing goal and so may preempt it. That is, if the operation can only meet one goal it should be the sales goal.
Within a set of servicing goals, there may be goals that relate to work having a short “opportunity window” as well as goals for work having a long opportunity window. An example of short opportunity window work is a telephone call, which if not answered in several tens of seconds may be abandoned by the caller with limited patience. An example of long opportunity window work is a letter from a customer regarding a billing adjustment that has until the next billing cycle to complete. Thus, the operation has a very short time frame for meeting service objectives associated with short opportunity window work while the window of opportunity to achieve service objectives associated with long opportunity window work is much broader. Hence there may be productive operational strategies to temporarily allocate more resources who are performing long opportunity window work to short opportunity window work in order to meet the servicing goals for the short opportunity window work.
Many service organizations need to dynamically allocate their servers to achieve desired results. Manual interventions typically effect such reallocations. Often servers are held in abeyance, not available for certain types of work, although they satisfy the skill profile required for the work type. However, if conditions so warrant they might be assigned to the work type. The server is said to be a backup server with respect to that work in such a case where the server is not usually utilized for that type of work.
The desire to allocate more server resources to an activity is typically contingent upon the alternative activities that the server resources can perform and the demand for such alternative activities. Each of these alternative activities is also potentially associated with various service levels, each of which has a goal and a level of attainment. Consequently, the reallocation of resources can depend upon service measures for all alternative work types associated with each of the server resources. Manually performing such a potentially complex allocation function can produce significantly sub-optimal results. Often, manual allocation comes too late and leads to more problems when the reallocated servers are not returned to their preferred work soon enough.
Most automatic call distributors (“ACDs”) have a feature that is generically called “call overflow.” Call overflow makes a server group available for a call queue contingent upon selected conditions. However, ACDs generally lack facilities for holding a server in abeyance from receiving calls contingent upon appropriate dynamic conditions. Generally, the ACD requires explicit control of the process of getting a call to a server but provides little explicit control of the process of getting a server to a call. However, the server's viewpoint of a work type is often critical in choosing between alternative work in order to maximize the aggregate completion of work.
The advent of skills-based routing, in which the skills of each individual server are considered in allocating servers, complicates the situation. Skills-based routing cannot tolerate simplifying fragmentation of resources into monolithic pools where distinguishing skills are ignored. For this reason, conventional ACDs as well as workflow automation systems fail to meet this need.
Work distribution systems may force users to manipulate server “skills” in order to effect a reallocation of servers, as discussed above. ACDs and other automatic work distributors may report “service levels” only on skill demands or on some kind of queuing point on a distribution map. However, sometimes a “skill” is actually a type of work instead of an attribute of the server's capabilities. These conventional solutions constitute potentially severe limitations on the monitoring and control of service levels important to the service organization.
In this environment, the service organization wants to provide preferential treatment to work activities in a hierarchy that ensures that the best work item is given to a server in view of service goals and the stated priorities of these goals. An automated system that dynamically expands a pool of servers available for work types based on the attainment or non-attainment of determinable service goals pertaining to the work types in a work processing facility would have significant utility.